*{box-sizing:border-box}
body{font-family:Inter, "PingFang SC", "Microsoft YaHei", sans-serif; margin:0; background:#f5f7fb; color:#222}
.app .container{padding:20px; max-width:1100px; margin:20px auto}
nav.navbar{
  background:linear-gradient(135deg, #0f9b0f 0%, #00b09b 100%);
  color:white;
  padding:16px 28px;
  border-radius:12px;
  display:flex;
  gap:20px;
  align-items:center;
  box-shadow:0 8px 24px rgba(15, 155, 15, 0.25);
  backdrop-filter:blur(10px);
  transition:all 0.3s ease;
  margin-bottom:8px;
}

nav.navbar:hover{
  box-shadow:0 12px 32px rgba(15, 155, 15, 0.35);
  transform:translateY(-2px);
}

nav.navbar>div:first-child{
  font-size:18px;
  font-weight:800;
  letter-spacing:0.5px;
  text-shadow:0 2px 4px rgba(0,0,0,0.1);
}

nav.navbar a{
  color:white;
  text-decoration:none;
  padding:10px 16px;
  border-radius:8px;
  font-weight:600;
  font-size:14px;
  transition:all 0.3s ease;
  position:relative;
  overflow:hidden;
}

nav.navbar a::before{
  content:'';
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:rgba(255,255,255,0.15);
  transition:left 0.3s ease;
}

nav.navbar a:hover::before{
  left:0;
}

nav.navbar a:hover{
  background:rgba(255,255,255,0.2);
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,0,0,0.1);
}

nav.navbar a.active{
  background:rgba(255,255,255,0.25);
  box-shadow:inset 0 2px 4px rgba(0,0,0,0.1);
}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:white;padding:12px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.05)}
.upload-area{border:2px dashed #cbd5e1;background:#fafafa;padding:16px;text-align:center;border-radius:8px;cursor:pointer}
.img-wrap{position:relative;overflow:hidden;border-radius:6px}
.img-wrap img{width:100%;display:block;height:auto}
.overlay-box{position:absolute;border:2px solid rgba(255,0,0,0.9);pointer-events:none}
.tag-badge{position:absolute;background:rgba(255,0,0,0.9);color:white;padding:2px 6px;border-radius:4px;font-size:12px}
.search-input{width:100%;padding:8px 10px;border-radius:6px;border:1px solid #e6edf3;margin-bottom:10px}
.chat-window{height:400px; overflow:auto; background:#fff;padding:12px;border-radius:8px}
.message{margin:8px 0;padding:8px;border-radius:8px;max-width:70%}
.message.user{background:#dcf8c6;margin-left:auto}
.message.bot{background:#f1f1f1}
.footer{display:flex;gap:8px;margin-top:10px}
.btn{padding:8px 12px;border-radius:6px;border:none;cursor:pointer}
